Dynamic Structural Operational Semantics
نویسندگان
چکیده
We introduce Dynamic SOS as a framework for describing semantics of programming languages that include dynamic software upgrades. Dynamic SOS (DSOS) is built on top of the Modular SOS of P. Mosses, with an underlying category theory formalization. The idea of Dynamic SOS is to bring out the essential differences between dynamic upgrade constructs and program execution constructs. The important feature of Modular SOS (MSOS) that we exploit in DSOS is the sharp separation of the program execution code from the additional (data) structures needed at run-time. In DSOS we aim to achieve the same modularity and decoupling for dynamic software upgrades. This is partly motivated by the long term goal of having machine-checkable proofs for general results like type safety. We exemplify Dynamic SOS on two languages supporting dynamic software upgrades, namely the C-like PROTEUS, which supports updating of variables, functions, records, or types at specific program points, and CREOL, which supports dynamic class upgrades in the setting of concurrent objects. Existing type analyses for software upgrades can be done on top of DSOS too, as we illustrate for PROTEUS. A second contribution is the definition of a general encapsulating construction on Modular SOS useful in situations where a form of encapsulation of the execution is needed. We show how to apply this in the setting of concurrent object-oriented programming with active objects and asynchronous method calls.
منابع مشابه
An Operational Semantics for Foops Extended Abstract
FOOPS is a functional, concurrent, object-oriented language. We give a structural operational semantics for FOOPS, considering features such as: classes of objects with associated methods and attributes, object identity, dynamic object creation and deletion, overloading, polymorphism, inheritance with overriding, concurrency, nondeterminism and atomic execution.
متن کاملA Formal Executable Semantics for Java
Some of the main features of the Java language are that it is object-oriented and multi-threaded. This article presents a formal semantics of a large subset of Java, including inheritance, dynamic linking and multi-threading. To describe the object-oriented features, we use a big-step semantics. The semantics of the concurrency is deened in a small-step semantics, using a structural operational...
متن کاملDynamic sequent calculus for the logic of Epistemic Actions and Knowledge
Dynamic Logics (DLs) form a large family of nonclassical logics, and perhaps the one enjoying the widest range of applications. Indeed, they are designed to formalize change caused by actions of diverse nature: updates on the memory state of a computer, displacements of moving robots in an environment, measurements in models of quantum physics, belief revisions, knowledge updates, etc. In each ...
متن کاملK Semantics for Dynamic Software Architectures
Recently, several research works propose multi formalisms based models to define rigorously the static and dynamic concepts of a software architecture. Further, these models are used to assess the architectural quality and to predict final system characteristics. The objective of this paper is to address both structural and behavioral viewpoints, involved in software architecture specification,...
متن کاملProgramming Research Group AN OPERATIONAL SEMANTICS FOR FOOPS
FOOPS is a concurrent object-oriented language. We give a structural operational semantics for FOOPS, considering features such as classes of objects with associated methods and attributes, object identity, dynamic object creation and deletion, overloading, polymorphism, inheritance with overriding, concurrency, nondeterminism, atomic execution, evaluation of expressions as background processes...
متن کاملNon-interleaving Operational Semantics for the Pi-calculus – technicalities
We provide a non-interleaving operational semantics for the pi-calculus as asynchronous transition systems, which generalizes the standard interleaving structural operational semantics and unfolds to standard, stable prime event structures. We follow the approach taken by Mukund and Nielsen in providing non-interleaving semantics for CCS by infering the so-called prefixing (structural or subjec...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- CoRR
دوره abs/1612.00666 شماره
صفحات -
تاریخ انتشار 2016